home *** CD-ROM | disk | FTP | other *** search
/ CU Amiga Super CD-ROM 21 / CU Amiga Magazine's Super CD-ROM 21 (1998)(EMAP Images)(GB)[!][issue 1998-04].iso / CUCD / Utilities / Identify / developer / include / libraries / identify.i < prev   
Encoding:
Text File  |  1998-01-14  |  15.2 KB  |  360 lines

  1. **
  2. **      $VER: identify.i 9.0 (14.1.98)
  3. **
  4. **      identify.library definitions
  5. **
  6. **      (C) Copyright 1996-98 Richard Koerber
  7. **      All Rights Reserved.
  8. **
  9.  
  10.         IFND    LIBRARIES_IDENTIFY_I
  11. LIBRARIES_IDENTIFY_I    SET     1
  12.  
  13.         IFND    EXEC_TYPES_I
  14.         INCLUDE 'exec/types.i'
  15.         ENDC
  16.  
  17.         IFND    EXEC_LIBRARIES_I
  18.         INCLUDE 'exec/libraries.i'
  19.         ENDC
  20.  
  21.         IFND    UTILITY_TAGITEM_I
  22.         INCLUDE utility/tagitem.i
  23.         ENDC
  24.  
  25. _IDTAGS         EQU     $CD450000
  26.  
  27. *------------------------------------------------------------------------*
  28. * Generic library informations
  29. *
  30. IDENTIFYNAME    MACRO
  31.         dc.b    "identify.library",0
  32.         ENDM
  33.  
  34. IDENTIFYVERSION EQU     9
  35.  
  36.     STRUCTURE IdentifyBase,0
  37.     STRUCT  ifyb_LibNode,LIB_SIZE
  38.     LABEL   ifyb_SIZEOF
  39.  
  40. IDENTIFYBUFLEN  EQU     50              ; default buffer length
  41.  
  42. *------------------------------------------------------------------------*
  43. * Expansion() tags
  44. *
  45. IDTAG_ConfigDev EQU     _IDTAGS+$00     ;(struct ConfigDev *) ConfigDev
  46.                     ; structure to be evaluated
  47. IDTAG_ManufID   EQU     _IDTAGS+$01     ;UWORD manufacturer ID if no
  48.                     ; ConfigDev is available
  49. IDTAG_ProdID    EQU     _IDTAGS+$02     ;UBYTE product ID if no
  50.                     ; ConfigDev is available
  51. IDTAG_StrLength EQU     _IDTAGS+$03     ;UWORD of maximum buffer length,
  52.                     ; including termination. Default
  53.                     ; is 50.
  54. IDTAG_ManufStr  EQU     _IDTAGS+$04     ;STRPTR of manufacturer name
  55.                     ; puffer, or NULL
  56. IDTAG_ProdStr   EQU     _IDTAGS+$05     ;STRPTR of product name
  57.                     ; puffer, or NULL
  58. IDTAG_ClassStr  EQU     _IDTAGS+$06     ;STRPTR of product class
  59.                     ; puffer, or NULL
  60. IDTAG_DeadStr   EQU     _IDTAGS+$07     ;STRPTR deadend or recoverable alert?
  61. IDTAG_SubsysStr EQU     _IDTAGS+$08     ;STRPTR alert subsystem
  62. IDTAG_GeneralStr EQU    _IDTAGS+$09     ;STRPTR alert general cause
  63. IDTAG_SpecStr   EQU     _IDTAGS+$0A     ;STRPTR alert specific cause
  64. IDTAG_FuncNameStr EQU   _IDTAGS+$0B     ;STRPTR function name
  65. IDTAG_Expansion EQU     _IDTAGS+$0C     ;(struct ConfigDev **) for a
  66.                     ; complete expansion check. Init
  67.                     ; the variable with NULL.
  68. IDTAG_Secondary EQU     _IDTAGS+$0D     ;BOOL warn for secondary expansion
  69.                     ; boards (defaults to FALSE) [V7]
  70. IDTAG_ClassID   EQU     _IDTAGS+$0E     ;ULONG * class ID of the provided
  71.                     ; expansion board (see below) [V8]
  72. IDTAG_Localize  EQU     _IDTAGS+$0F     ;BOOL return localized strings
  73.                     ; (defaults to TRUE) [V8]
  74. IDTAG_NULL4NA   EQU     _IDTAGS+$10     ;BOOL return NULL for not available,
  75.                     ; else return a string (defaults to
  76.                     ; FALSE) [V8]
  77.  
  78. *------------------------------------------------------------------------*
  79. * Hardware description types
  80. *
  81. IDHW_SYSTEM     EQU     0       ; System (Amiga,DraCo,...)              [V2]
  82. IDHW_CPU        EQU     1       ; CPU (68000,68010,...,68060)
  83. IDHW_FPU        EQU     2       ; FPU (---,68881,68882,68040,68060)
  84. IDHW_MMU        EQU     3       ; MMU (---,68852,68030,68040,68060)
  85. IDHW_OSVER      EQU     4       ; OS Version (V*.*)
  86. IDHW_EXECVER    EQU     5       ; Exec Version (V*.*)
  87. IDHW_WBVER      EQU     6       ; Workbench Version (---,V*.*)
  88. IDHW_ROMSIZE    EQU     7       ; OS ROM Size (*KB, *MB)
  89. IDHW_CHIPSET    EQU     8       ; Chipset (OCS,ECS,AGA,DraCo)
  90. IDHW_GFXSYS     EQU     9       ; Graphic OS (AmigaOS, CyberGraphX, ...)
  91. IDHW_CHIPRAM    EQU     10      ; All Chip RAM (*KB, *MB, *GB)
  92. IDHW_FASTRAM    EQU     11      ; All Fast RAM (*KB, *MB, *GB)
  93. IDHW_RAM        EQU     12      ; All Total RAM (*KB, *MB, *GB)
  94. IDHW_SETPATCHVER EQU    13      ; SetPatch Version (---,V*.*)           [V4]
  95. IDHW_AUDIOSYS   EQU     14      ; Audio OS (AmigaOS, AHI, ...)          [V5]
  96. IDHW_OSNR       EQU     15      ; AmigaOS (2.04, 3.1, ...)
  97. IDHW_VMMCHIPRAM EQU     16      ; VMM Chip RAM (*KB, *MB, *GB)
  98. IDHW_VMMFASTRAM EQU     17      ; VMM Fast RAM (*KB, *MB, *GB)
  99. IDHW_VMMRAM     EQU     18      ; VMM Total RAM (*KB, *MB, *GB)
  100. IDHW_PLNCHIPRAM EQU     19      ; Plain Chip RAM (*KB, *MB, *GB)
  101. IDHW_PLNFASTRAM EQU     20      ; Plain Fast RAM (*KB, *MB, *GB)
  102. IDHW_PLNRAM     EQU     21      ; Plain Total RAM (*KB, *MB, *GB)
  103. IDHW_VBR        EQU     22      ; Vector Base Register                  [V6]
  104. IDHW_LASTALERT  EQU     23      ; Last Alert code
  105. IDHW_VBLANKFREQ EQU     24      ; VBlank Frequency
  106. IDHW_POWERFREQ  EQU     25      ; Power Frequency
  107. IDHW_ECLOCK     EQU     26      ; EClock
  108. IDHW_SLOWRAM    EQU     27      ; Plain Slow RAM (*KB, *MB, *GB)
  109. IDHW_GARY       EQU     28      ; Gary (---,Normal,...)
  110. IDHW_RAMSEY     EQU     29      ; RAMSEY (---,D,F)
  111. IDHW_BATTCLOCK  EQU     30      ; Battery Backed Up Clock (---,Found)
  112. IDHW_CHUNKYPLANAR EQU   31      ; Chunky To Planar Hardware (---,Found) [V7]
  113. IDHW_POWERPC    EQU     32      ; PowerPC present? (---,Found)
  114. IDHW_PPCCLOCK   EQU     33      ; PowerPC clock (unit MHz)
  115. IDHW_CPUREV     EQU     34      ; CPU revision                          [V8]
  116. IDHW_CPUCLOCK   EQU     35      ; CPU clock (unit MHz)
  117. IDHW_FPUCLOCK   EQU     36      ; FPU clock (unit MHz)
  118. IDHW_RAMACCESS  EQU     37      ; Main board RAM access time (unit ns)
  119. IDHW_RAMWIDTH   EQU     38      ; Main board RAM width (bit)
  120. IDHW_RAMCAS     EQU     39      ; Main board RAM CAS mode
  121. IDHW_RAMBANDWIDTH EQU   40      ; Main board RAM bandwidth
  122. IDHW_TCPIP      EQU     41      ; TCP/IP stack                          [V9]
  123. IDHW_PPCOS      EQU     42      ; PowerPC OS
  124. IDHW_AGNUS      EQU     43      ; Agnus chip revision
  125. IDHW_AGNUSMODE  EQU     44      ; Agnus chip mode
  126. IDHW_NUMBEROF   EQU     45      ; Number of types, PRIVATE!
  127.  
  128. *------------------------------------------------------------------------*
  129. * IDHW_SYSTEM numerical result codes
  130. *
  131. IDSYS_AMIGA1000 EQU     0       ; Amiga 1000
  132. IDSYS_AMIGAOCS  EQU     1       ; OCS Amiga 500/2000
  133. IDSYS_AMIGAECS  EQU     2       ; ECS Amiga 500/2000
  134. IDSYS_AMIGA500  EQU     3       ; Amiga 500
  135. IDSYS_AMIGA2000 EQU     4       ; Amiga 2000
  136. IDSYS_AMIGA3000 EQU     5       ; Amiga 3000
  137. IDSYS_CDTV      EQU     6       ; CDTV
  138. IDSYS_AMIGA600  EQU     7       ; Amiga 600
  139. IDSYS_CD32      EQU     8       ; CD32
  140. IDSYS_AMIGA1200 EQU     9       ; Amiga 1200
  141. IDSYS_AMIGA4000 EQU     10      ; Amiga 4000
  142. IDSYS_DRACO     EQU     11      ; DraCo
  143. IDSYS_UAE       EQU     12      ; Ubiquitous Amiga Emulator
  144. IDSYS_AMIGA4000T EQU    13      ; Amiga 4000 Tower
  145.  
  146. *------------------------------------------------------------------------*
  147. * IDHW_CPU numerical result codes
  148. *
  149. IDCPU_68000     EQU     0       ; 68000
  150. IDCPU_68010     EQU     1       ; 68010
  151. IDCPU_68020     EQU     2       ; 68020
  152. IDCPU_68030     EQU     3       ; 68030
  153. IDCPU_68EC030   EQU     4       ; 68EC030 (without MMU)
  154. IDCPU_68040     EQU     5       ; 68040
  155. IDCPU_68LC040   EQU     6       ; 68LC040 (without FPU)
  156. IDCPU_68060     EQU     7       ; 68060
  157. IDCPU_68LC060   EQU     8       ; 68LC060 (without FPU)
  158.  
  159. *------------------------------------------------------------------------*
  160. * IDHW_FPU numerical result codes
  161. *
  162. IDFPU_NONE      EQU     0       ; no FPU
  163. IDFPU_68881     EQU     1       ; 68881
  164. IDFPU_68882     EQU     2       ; 68882
  165. IDFPU_68040     EQU     3       ; 68040
  166. IDFPU_68060     EQU     4       ; 68060
  167.  
  168. *------------------------------------------------------------------------*
  169. * IDHW_MMU numerical result codes
  170. *
  171. IDMMU_NONE      EQU     0       ; no MMU
  172. IDMMU_68851     EQU     1       ; 68851
  173. IDMMU_68030     EQU     2       ; 68030
  174. IDMMU_68040     EQU     3       ; 68040
  175. IDMMU_68060     EQU     4       ; 68060
  176.  
  177. *------------------------------------------------------------------------*
  178. * IDHW_OSNR numerical result codes
  179. *
  180. IDOS_UNKNOWN    EQU     0       ; <V36 or >V40
  181. IDOS_2_0        EQU     1       ; OS2.0  (V36)
  182. IDOS_2_04       EQU     2       ; OS2.04 (V37)
  183. IDOS_2_1        EQU     3       ; OS2.1  (V38)
  184. IDOS_3_0        EQU     4       ; OS3.0  (V39)
  185. IDOS_3_1        EQU     5       ; OS3.1  (V40)
  186.  
  187. *------------------------------------------------------------------------*
  188. * IDHW_CHIPSET numerical result codes
  189. *
  190. IDCS_OCS        EQU     0       ; OCS
  191. IDCS_ECS        EQU     1       ; ECS
  192. IDCS_AGA        EQU     2       ; AGA
  193. IDCS_ALTAIS     EQU     3       ; DraCo Altais
  194. IDCS_NECS       EQU     4       ; Nearly ECS (no HR-Agnus or HR-Denise)
  195.  
  196. *------------------------------------------------------------------------*
  197. * IDHW_GFXSYS numerical result codes
  198. *
  199. IDGOS_AMIGAOS   EQU     0       ; Plain AmigaOS
  200. IDGOS_EGS       EQU     1       ; EGS
  201. IDGOS_RETINA    EQU     2       ; Retina
  202. IDGOS_GRAFFITI  EQU     3       ; Graffiti
  203. IDGOS_TIGA      EQU     4       ; TIGA
  204. IDGOS_PROBENCH  EQU     5       ; Merlin ProBench
  205. IDGOS_PICASSO   EQU     6       ; Picasso
  206. IDGOS_CGX       EQU     7       ; CyberGraphX
  207. IDGOS_CGX3      EQU     8       ; CyberGraphX 3D
  208. IDGOS_PICASSO96 EQU     9       ; Picasso96
  209.  
  210. *------------------------------------------------------------------------*
  211. * IDHW_AUDIOSYS numerical result codes
  212. *
  213. IDAOS_AMIGAOS   EQU     0       ; Plain AmigaOS
  214. IDAOS_MAESTIX   EQU     1       ; MaestroPro driver
  215. IDAOS_TOCCATA   EQU     2       ; Toccata driver
  216. IDAOS_PRELUDE   EQU     3       ; Prelude driver
  217. IDAOS_AHI       EQU     4       ; AHI
  218. IDAOS_MACROAUDIO EQU    5       ; MacroAudio
  219.  
  220. *------------------------------------------------------------------------*
  221. * IDHW_GARY numerical result codes
  222. *
  223. IDGRY_NONE      EQU     0       ; No Gary available
  224. IDGRY_NORMAL    EQU     1       ; Normal Gary
  225. IDGRY_ENHANCED  EQU     2       ; Enhanced Gary
  226.  
  227. *------------------------------------------------------------------------*
  228. * IDHW_RAMSEY numerical result codes
  229. *
  230. IDRSY_NONE      EQU     0       ; No RamSey available
  231. IDRSY_REVD      EQU     1       ; RamSey Revision D
  232. IDRSY_REVF      EQU     2       ; RamSey Revision F
  233.  
  234. *------------------------------------------------------------------------*
  235. * IDHW_POWERPC numerical result codes
  236. *
  237. IDPPC_NONE      EQU     0       ; No PowerPC implemented
  238. IDPPC_OTHER     EQU     1       ; Another PowerPC
  239. IDPPC_602       EQU     2       ; 602
  240. IDPPC_603       EQU     3       ; 603
  241. IDPPC_603E      EQU     4       ; 603e
  242. IDPPC_603P      EQU     5       ; 603p
  243. IDPPC_604       EQU     6       ; 604
  244. IDPPC_604E      EQU     7       ; 604e
  245. IDPPC_620       EQU     8       ; 620
  246.  
  247. *------------------------------------------------------------------------*
  248. * IDHW_RAMCAS numerical result codes
  249. *
  250. IDCAS_NONE      EQU     0       ; Not available
  251. IDCAS_NORMAL    EQU     1       ; Normal access
  252. IDCAS_DOUBLE    EQU     2       ; Double access
  253.  
  254. *------------------------------------------------------------------------*
  255. * IDHW_TCPIP numerical result codes
  256. *
  257. IDTCP_NONE      EQU     0       ; Not available
  258. IDTCP_AMITCP    EQU     1       ; AmiTCP
  259. IDTCP_MIAMI     EQU     2       ; Miami
  260. IDTCP_TERMITE   EQU     3       ; TermiteTCP
  261.  
  262. *------------------------------------------------------------------------*
  263. * IDHW_PPCOS numerical result codes
  264. *
  265. IDPOS_NONE      EQU     0       ; None
  266. IDPOS_POWERUP   EQU     1       ; PowerUP (Phase 5)
  267. IDPOS_WARPOS    EQU     2       ; WarpOS (Haage&Partner)
  268.  
  269. *------------------------------------------------------------------------*
  270. * IDHW_AGNUS numerical result codes
  271. *
  272. IDAG_NONE       EQU     0       ; None
  273. IDAG_UNKNOWN    EQU     1       ; Unknown Agnus
  274. IDAG_8361       EQU     2       ; Agnus 8361
  275. IDAG_8367       EQU     3       ; Agnus 8367
  276. IDAG_8370       EQU     4       ; Agnus 8370
  277. IDAG_8371       EQU     5       ; Agnus 8371
  278. IDAG_8372_R4    EQU     6       ; Agnus 8372 Rev. 1-4
  279. IDAG_8372_R5    EQU     7       ; Agnus 8372 Rev. 5
  280. IDAG_8374_R2    EQU     8       ; Alice 8374 Rev. 1-2
  281. IDAG_8374_R3    EQU     9       ; Alice 8374 Rev. 3-4
  282.  
  283. *------------------------------------------------------------------------*
  284. * IDHW_AGNUSMODE numerical result codes
  285. *
  286. IDAM_NONE       EQU     0       ; None
  287. IDAM_NTSC       EQU     1       ; NTSC Agnus
  288. IDAM_PAL        EQU     2       ; PAL Agnus
  289.  
  290. *------------------------------------------------------------------------*
  291. * IDTAG_ClassID numerical result codes
  292. *
  293. IDCID_UNKNOWN           EQU     0       ; unknown functionality
  294. IDCID_MISC              EQU     1       ; miscellaneous expansion
  295. IDCID_TURBO             EQU     2       ; accelerator
  296. IDCID_TURBORAM          EQU     3       ; accelerator RAM
  297. IDCID_TURBOHD           EQU     4       ; accelerator + some HD controller
  298. IDCID_TURBOIDE          EQU     5       ; accelerator + AT-IDE controller
  299. IDCID_TURBOSCSIHD       EQU     6       ; accelerator + SCSI host adapter
  300. IDCID_NET               EQU     7       ; some network
  301. IDCID_ARCNET            EQU     8       ; ArcNet
  302. IDCID_ETHERNET          EQU     9       ; Ethernet
  303. IDCID_AUDIO             EQU     10      ; audio
  304. IDCID_VIDEO             EQU     11      ; video (video digitizer etc)
  305. IDCID_MULTIMEDIA        EQU     12      ; multimedia (audio, video, etc)
  306. IDCID_DSP               EQU     13      ; multi purpose DSP
  307. IDCID_BUSBRIDGE         EQU     14      ; ISA bus bridge
  308. IDCID_BRIDGE            EQU     15      ; PC bridge
  309. IDCID_EMULATOR          EQU     16      ; some Emulator hardware
  310. IDCID_MACEMU            EQU     17      ; Macintosh emulator hardware
  311. IDCID_ATARIEMU          EQU     18      ; Atari emulator hardware
  312. IDCID_GFX               EQU     19      ; graphics (register)
  313. IDCID_GFXRAM            EQU     20      ; graphics (video RAM)
  314. IDCID_HD                EQU     21      ; some HD controller
  315. IDCID_HDRAM             EQU     22      ; some HD controller + RAM
  316. IDCID_IDEHD             EQU     23      ; IDE controller
  317. IDCID_IDEHDRAM          EQU     24      ; IDE controller + RAM
  318. IDCID_SCSIHD            EQU     25      ; SCSI host adapter
  319. IDCID_RAMSCSIHD         EQU     26      ; SCSI host adapter + RAM
  320. IDCID_CDROM             EQU     27      ; CD-ROM interface
  321. IDCID_MODEM             EQU     28      ; internal modem
  322. IDCID_ISDN              EQU     29      ; internal ISDN terminal adapter
  323. IDCID_MULTIIO           EQU     30      ; multi I/O (serial + parallel)
  324. IDCID_SERIAL            EQU     31      ; multi serial (no parallel)
  325. IDCID_PARALLEL          EQU     32      ; multi parallel (no serial)
  326. IDCID_SCANIF            EQU     33      ; scanner interface
  327. IDCID_TABLET            EQU     34      ; drawing tablet interface
  328. IDCID_RAM               EQU     35      ; plain RAM expansion
  329. IDCID_FLASHROM          EQU     36      ; Flash ROM
  330. IDCID_SCSIIDE           EQU     37      ; combined SCSI/IDE controller
  331. IDCID_RAMFPU            EQU     38      ; RAM expansion + FPU
  332. IDCID_GUESS             EQU     39      ; name was unknown but guessed
  333. IDCID_KICKSTART         EQU     40      ; KickStart
  334. IDCID_RAM32             EQU     41      ; 32bit RAM expansion
  335. IDCID_TURBOANDRAM       EQU     42      ; accelerator + RAM expansion
  336. IDCID_ACCESS            EQU     43      ; access control
  337. IDCID_INTERFACE         EQU     44      ; some interface
  338. IDCID_MFMHD             EQU     45      ; MFM HD controller
  339.     ; Be prepared to get other numbers as well. In this case you
  340.     ; should assume IDCID_MISC.
  341.  
  342. *------------------------------------------------------------------------*
  343. * Error codes
  344. *
  345.                 ;Positive error codes are DOS errors!
  346. IDERR_OKAY      EQU     0       ;No error
  347. IDERR_NOLENGTH  EQU     -1      ;Buffer length is 0 ??
  348. IDERR_BADID     EQU     -2      ;Missing or bad board ID
  349. IDERR_NOMEM     EQU     -3      ;Not enough memory
  350. IDERR_NOFD      EQU     -4      ;No fitting FD file found
  351. IDERR_OFFSET    EQU     -5      ;Function offset not found
  352. IDERR_DONE      EQU     -6      ;Done with traversing (not an error)
  353. IDERR_SECONDARY EQU     -7      ;Secondary expansion board (not an error)
  354.  
  355. *------------------------------------------------------------------------*
  356. * That's all...
  357. *
  358.     ENDC
  359.  
  360.